Component org.nuxeo.ecm.diff.service.DiffDisplayService
In bundle org.nuxeo.diff.jsf
Documentation
This service provides an extension point to manage document diff display.
Antoine Taillefer
Implementation
Class:
org.nuxeo.ecm.diff.service.impl.DiffDisplayServiceImpl
Services
Extension Points
XML Source
<?xml version="1.0"?>
<component name="org.nuxeo.ecm.diff.service.DiffDisplayService">
<documentation>
This service provides an extension point to manage
document diff display.
@author
Antoine Taillefer
</documentation>
<implementation class="org.nuxeo.ecm.diff.service.impl.DiffDisplayServiceImpl" />
<service>
<provide interface="org.nuxeo.ecm.diff.service.DiffDisplayService" />
</service>
<extension-point name="diffDefaultDisplay">
<documentation>
<pre>
The diffDefaultDisplay extension point allows you to
contribute a diffExcludedFields contribution to define a
set of
fields from a given schema that will be
excluded from the default
diff display in the document diff view
(the default diff display
takes into account every different field of every common schema
between the compared
documents, in an undefined order).
If no
fields are specified, the whole schema is excluded.
</pre>
<code>
<diffExcludedFields schema="common" />
<diffExcludedFields schema="dublincore">
<fields>
<field name="subjects" />
<field name="modified" />
</fields>
</diffExcludedFields>
</code>
</documentation>
<object class="org.nuxeo.ecm.diff.service.impl.DiffExcludedFieldsDescriptor" />
<documentation>
<pre>
The diffDefaultDisplay extension point also allows you to
contribute a diffComplexField contribution to define
a set of
items from a given complex property that will be
included or
excluded from the default
diff display in the
document diff view.
Order matters for included items.
</pre>
<code>
<diffComplexField schema="complextypes" name="complex">
<includedItems>
<item name="dateItem" />
<item name="stringItem" />
</includedItems>
</diffComplexField>
<diffComplexField schema="complextypes" name="complexList">
<excludedItems>
<item name="stringItem" />
<item name="dateItem" />
</excludedItems>
</diffComplexField>
</code>
</documentation>
<object class="org.nuxeo.ecm.diff.service.impl.DiffComplexFieldDescriptor" />
</extension-point>
<extension-point name="diffDisplay">
<documentation>
<pre>
A diffDisplay contribution defines which diffBlocks will be
displayed in the document diff view for a given
document type.
The order matters.
If the 2 diffed documents have the same type,
the diffDisplay matching this type
is used, otherwise or if such
a diffDisplay does not exist, the default diff display is used.
The default diff
display
takes into account every different field
of every common schema between the
compared documents, in an
undefined order.
</pre>
<code>
<diffDisplay type="File">
<diffBlocks>
<diffBlock name="dublincore" />
<diffBlock name="files" />
</diffBlocks>
</diffDisplay>
<diffDisplay type="Note" enabled="false" />
</code>
</documentation>
<object class="org.nuxeo.ecm.diff.service.impl.DiffDisplayDescriptor" />
</extension-point>
<extension-point name="diffBlock">
<documentation>
<pre>
A diffBlock contribution defines which fields will be
displayed in the diff display block.
The order matters.
For
complex types, items can be
defined to specifiy which sub-fields
must be displayed and in which order.
</pre>
<code>
<diffBlock name="dublincore" label="label.diffBlock.dublincore">
<fields>
<field schema="dublincore" name="description" />
<field schema="dublincore" name="coverage" />
<field schema="dublincore" name="created" />
<field schema="dublincore" name="modified" />
</fields>
</diffBlock>
<diffBlock name="files" label="label.diffBlock.files">
<fields>
<field schema="file" name="content" displayContentDiffLinks="true" />
<field schema="files" name="files">
<items>
<!-- Display the file only, not the filename which is managed by the file widget type -->
<item name="file" displayContentDiffLinks="true" />
</items>
</field>
</fields>
</diffBlock>
</code>
</documentation>
<object class="org.nuxeo.ecm.diff.service.impl.DiffBlockDescriptor" />
</extension-point>
</component>